home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Pascal Super Library
/
Pascal Super Library (CW International)(1997).bin
/
BORL_TIP
/
TI100
/
TI230.ASC
< prev
next >
Wrap
Text File
|
1991-09-11
|
3KB
|
133 lines
PRODUCT : TURBO PASCAL NUMBER : 230
VERSION : ALL
OS : PC-DOS, MS-DOS, CP/M-80, CP/M-86
DATE : April 8, 1986 PAGE : 1/3
TITLE : MICROCALC MODIFICATIONS
The following are modifications to be made to MicroCalc. If you
are using CP/M-80, the section of code to modify is module MC-
MOD04.INC. For all other implementations, the code is located in
the main file CALC.PAS.
Bring up the appropriate module into the Turbo Pascal editor, and
locate the following csegments of code. The lines to change are
marked as {version 2.00 modified}
Modification 1:
end else
if Ch='(' then
begin
NextCh;
F:=Expression;
if Ch =')' then NextCh; { Ver. 2.00 modified }
end else
if Ch in ['A'..'G'] then { Maybe a cell reference }
begin
EFX:=Ch;
NextCh;
Modification 2:
if Ch in Numbers then
begin
EXY:=EXY+Ch;
NextCh;
end;
if Ch = ')' then NextCh; { Ver. 2.00 Addition }
Val(EXY,EFY,ErrPos);
IsFormula:=true;
if (Constant in Sheet[EFX,EFY].CellStatus) and
not (Calculated in Sheet[EFX,EFY].CellStatus) then
begin
Modification 3:
F:=Sheet[SumFX,SumFY].Value;
Cellsum:=Cellsum+f;
f:=Cellsum;
PRODUCT : TURBO PASCAL NUMBER : 230
VERSION : ALL
OS : PC-DOS, MS-DOS, CP/M-80, CP/M-86
DATE : April 8, 1986 PAGE : 2/3
TITLE : MICROCALC MODIFICATIONS
end;
end
end;
end else { Ver. 2.00 Modification }
if Ch = ')' then { Ver. 2.00 Addition }
begin { Ver. 2.00 Addition }
NextCh; { Ver. 2.00 Addition }
Found := true; { Ver. 2.00 Addition }
end; { Ver. 2.00 Addition }
end;
end else
begin
found:=false;
for sf:=fabs to ffact do
if not found then
begin
l:=Length(StandardFunctionNames[sf]);
if copy(Formula,Pos - 1,l)=StandardFunctionNames[sf] then
{ Ver. 2.00 Modification }
begin
Pos:=Pos+l-1; NextCh;
F:= Expression; { Ver. 2.00 Modification }
case sf of
fabs: f:=abs(f);
fsqrt: f:=sqrt(f);
fsqr: f:=sqr(f);
fsin: f:=sin(f);
fcos: f:=cos(f);
Modification 4:
ffact: f:=fact(trunc(f));
end;
Found:=true;
end;
end;
if not Found then ErrPos:=Pos;
end;
end; { End if Ch in ['A'..'G'] } { Ver. 2.00 Addition }
Factor:=F;
end { function Factor};